A device often has to undergo a variety of tests before that device is deemed ready for use. For example, a device (e.g., unit) may be required to pass a number of tests at a manufacturing plant before that device is allowed to be shipped for use. As such, testing systems, which operate to test devices, may execute a plurality of tests on a device to ensure its operability. Many of these testing systems are required to run more than one test on each device. As such, the testing systems may run one test and, depending on the outcome of the first test, may run a second test. For example, if the first test passes successfully, the testing system may run the second test. If, however, the first test does not pass successfully, the testing system may not run the second test. Some of these testing systems include one or more processors executing software instructions to carry out the various tests.
The software, however, is often written such that tests are executed sequentially until all tests are completed. For example, software may be written in such a manner that a first test is executed, and upon its completion a second test is executed. Similarly, upon completion of the second test, a third test may be executed, and so on. In this manner, the amount of time that it takes to execute a series of tests becomes the sum of the amount of time it takes to execute each test. The amount of time required to test devices is further affected by the number of devices needing to be tested. For example, for each additional device that needs to be tested, the total testing time increases by the amount of time that it takes to execute the series of tests on each device. Moreover, the running of one test may conflict with the running of another test. For example, one test may need another test to complete before the first test may be run. As another example, one test may need the device under test to be in one mode, while another test may need the device to be in a different mode. As such, a device under test may need to be placed in a particular mode for running a particular test.
The testing of missiles is no exception. Missiles must undergo a variety of tests before they are deemed available for use. For example, missiles include various subsystems that must each be tested. The testing of these subsystems may include the measuring of voltage levels, audio signal levels, gas flow rates, among other examples. As such, the testing of missiles can be a very time consuming process. Therefore, there are opportunities to reduce the amount of testing time for missiles and other devices.